$(document).ready(init_actividadpyp)

/*funcion que se ejecuta cuando carga de la pagina*/
function init_actividadpyp(){
    // cargar_actividadpyp();
    $("#nuevaActividadpypBtn").button({
        icons: {
            primary: 'ui-icon-plusthick'
        }
    });

    $("#buscarBtn").button({
        icons: {
            primary: 'ui-icon-search'
        },
        text: false
    });

    $("#clearBtn").button({
        icons: {
            primary: 'ui-icon-arrowthick-1-w'
        },
        text: false
    });
                    
    $("#ayudaBtn").button({
        icons: {
            primary: 'ui-icon-help'
        },
        text: false
    });
   
    $("#id_programapyp").load("/salus/AdministrarServlet", {
        op:"-20"
    });
    $("#id_progpyp").load("/salus/AdministrarServlet", {
        op:"-20"
    });
    $("#id_fincn").load("/salus/AdministrarServlet", {
        op:"-21"
    });
    $("#id_finpx").load("/salus/AdministrarServlet", {
        op:"-22"
    });


    $("#nuevaActividadpypBtn").click(function(){
        clear_form_elements($("#formActividadpyp"));
        mostrar_campos({
            id:"",
            codigo:"",
            descripcion:"",
            id_programapyp:"",
            id_sexo:"",
            id_fincn:"",
            id_finpx:"",
            id_actcups:"",
            id_actsoat:"",
            frecuencia:"",
            edad1:"",
            medida1:"",
            edad2:"",
            medida2:"",
            habilitada:"",
            cantidad:"",
            tiempo:"",
            id_actividad:"",
            id_diagnostico:"",
            cantidad_sesion:"",            
            op:"nuevo"
        });

        formularioActividadpyp();
    })


    $("#formActividadpyp").validate({
        rules:{            
            codigo:{
                required:true
            },
            descripcion:{
                required:true
            },
            id_programapyp:{
                required:true
            },
            des_actsoat:{
                required:true
            },
            des_actcups:{
                required:true
            }
        }
    })

    $("#buscarBtn").click(buscar_actividadpyp);
    $("#clearBtn").click(limpiarBusqueda);
    
    
    $("#buscarCod").keypress(function(ev){
        if(ev.keyCode==13){       
            buscar_actividadpyp()
        }
    })
    $("#buscarDes").keypress(function(ev){
        if(ev.keyCode==13){       
            buscar_actividadpyp()
        }
    })
    
    $("#buscarCod").keyup(function(){
        $("#buscarDes").val("");
    })
    $("#buscarDes").keyup(function(){
        $("#buscarCod").val("");
    })
    
    
    

    $("#habilitada").change(function(){
        if(this.checked){
            $("#vhabilitada").val('On');
        }else{
            $("#vhabilitada").val('Off');
        }
    })

$("#edad1").numeric();
$("#edad2").numeric();
$("#frecuencia").numeric();
$("#cantidad").numeric();

/*AYUDA*/
$('#ayudaBtn').qtip({
    content: '<b style="color:red">*</b> Para editar una actividad pyp haga doble click sobre el registro seleccionado<br /><b style="color:red">*</b> Para buscar un registro utilice los campos del pie de cada columna',
    show: 'mouseover',
    hide: 'mouseout',
    style: {
        name: 'cream', 
        border: {
            width: 3,
            radius: 8                                         
        },
        width: 200,
        tip: { // Now an object instead of a string
            corner: 'topRight', // We declare our corner within the object using the corner sub-option
            color: 'orange',
            size: {
                x: 20, // Be careful that the x and y values refer to coordinates on screen, not height or width.
                y : 8 // Depending on which corner your tooltip is at, x and y could mean either height or width!
            }
        }
    },
    position: {
        corner: {
            target: 'bottomLeft',
            tooltip: 'topRight'
        },
        container: $('div.tooltips')                          
    }
})

}


/*Muestra el dialogo para capturar los datos de la tabla*/
function formularioActividadpyp(){
    $("#actividadpyp-form").dialog({
        height: 540,
        width: 750,
        modal: true,
        title:"Actividadpyp",
        buttons:{
            "Cancelar":function(){
                $(this).dialog("close")
            },
            "Guardar":
                                                              
            function(){
                if($("#op").val()=='nuevo'){
                    validarActividad()
                }else{
                    guardar_actividadpyp()
                }                              
                                
            }
                                
        }
    });
}


/*Guarda los datos de la tabla*/
function guardar_actividadpyp(){
    
    if ($("#formActividadpyp").valid()){
        var form = $("#formActividadpyp");
        var op=$("#op").val()+"_actividadpyp";

        var formLocal={
            id:$("#id").val(),
            codigo:$("#codigo").val(),
            descripcion:$("#descripcion").val()
        };
        $.ajax({
            type:'POST',
            url:'/salus/AdministrarSetServlet',
            data:form.serialize()+"&op="+op,
            success:function(data) {

                var resp = data.split("_");

                if(resp[0] == "editar" ){                
                    edit_actividadpyp(formLocal)
                    $("#actividadpyp-form").dialog("close")
                    window.location.reload()
                }else {                
                    add_actividadpyp(formLocal)
                    $("#actividadpyp-form").dialog("close")
                    window.location.reload()
                }
           
        
       
            }
        });
    }
}


/*Actualiza los datos en la grilla, despues de actualizar los datos*/
function edit_actividadpyp(actividadpyp){
    $("#actividadpyp-"+actividadpyp.id+"-codigo").text(actividadpyp.codigo)
    $("#actividadpyp-"+actividadpyp.id+"-descripcion").text(actividadpyp.descripcion)
}


/*Crea dinamicamente la grilla, dependiendo de la respuesta de la base de datos in(json)*/
function add_actividadpyp(actividadpyp){
    alert(actividadpyp);
    var tbody=$("#tabla-actividadpyp-body")
    var tr=$("<tr/>").attr("id","actividadpyp-"+actividadpyp.id).appendTo(tbody);
    $("<td/>").appendTo(tr).append(actividadpyp.codigo).attr("id","actividadpyp-"+actividadpyp.id+"-codigo");
    $("<td/>").appendTo(tr).append(actividadpyp.descripcion).attr("id","actividadpyp-"+actividadpyp.id+"-descripcion");

    var aBorrar=$("<a/>").text("Borrar").addClass("borrar").attr("href","#").click(function(){
        if (confirm("¿Desea borrar este asignatura?")){
            $.post("set_data.php",{
                op:"borrar_asignatura",
                id:actividadpyp.id
            },function(data){
                var resp=JSON.parse(data);
                if (resp.estado=="OK"){
                    $("#actividadpyp-"+actividadpyp.id).remove();
                }
            }
            )
        }
        return false;
    })

    var aEditar=$("<a/>").text("Editar").addClass("editar").attr("href","#").click(function(){
        $.getJSON("/salus/AdministrarEditServlet", {
            op:"9",
            id:actividadpyp.id
        }, function(data){            
            data.op="editar";
            mostrar_campos(data);
            formularioActividadpyp();
        })
        return false;
    })

    $("<td/>").append(aEditar).append(aBorrar).appendTo(tr)

}

function editar(id)
{
    $.getJSON("/salus/AdministrarEditServlet", {
        op:"9",
        id:id
    }, function(data){            
        data.op="editar";
        mostrar_campos(data);
        formularioActividadpyp();
    })
}
/*Llena el formulario de edicion con los datos retornados via json*/
function mostrar_campos(actividadpyp){
    $("#op").val(actividadpyp.op)
    $("#id").val(actividadpyp.id)
    $("#codigo").val(actividadpyp.codigo)
    $("#descripcion").val(actividadpyp.descripcion)
    $("#id_programapyp").val(actividadpyp.id_programapyp)
    $("#sexo").val(actividadpyp.id_sexo)
    $("#id_fincn").val(actividadpyp.id_fincn)
    $("#id_finpx").val(actividadpyp.id_finpx)


    $("#id_actcups").val(actividadpyp.id_actcups)
    $("#id_actsoat").val(actividadpyp.id_actsoat)
    $("#frecuencia").val(actividadpyp.frecuencia)
    
    if(actividadpyp.habilitada=="true"){
        $("#habilitada").attr("checked", "true");
        $("#vhabilitada").val(actividadpyp.habilitada)
        }
    
    $("#edad1").val(actividadpyp.edad1)
    $("#medida1").val(actividadpyp.medida1)
    $("#edad2").val(actividadpyp.edad2)
    $("#medida2").val(actividadpyp.medida2)
    $("#habilitada").val(actividadpyp.habilitada)

    $("#cantidad").val(actividadpyp.cantidad)
    $("#tiempo").val(actividadpyp.tiempo)

    
    $("label.error").remove()
}


/*Trae los datos de la base de datos en un objeto json*/
function cargar_actividadpyp(){
    $.getJSON("/salus/AdministrarServlet", {
        op:"9",
        cod:$("#buscarCod").val(),
        des:$("#buscarDes").val(),
        prog:$("#id_progpyp").val()
    }, function(data){
        $.each(data, function(i,item){
            add_actividadpyp(item)
        })
        $("#tabla-actividadpyp").addClass("tablesorter").tablesorter({
            widthFixed: true,
            widgets: ['zebra']
        }).tablesorterPager({
            container: $("#pager")
        })
    })
}


/*gestiona la busqueda de datos en la grilla, por codigo y descripcion*/
function buscar_actividadpyp(){

    if($("#buscarCod").val()==""&&$("#buscarDes").val()==""&&$("#buscarDes").val()=="0"){
        //window.location.reload();
        alert('Debe digitar un dato de busqueda')
    }else{
        $("#tabla-actividadpyp-body tr").remove();
        $("#tabla-actividadpyp colgroup").remove();
        $.getJSON("/salus/AdministrarServlet", {
            op:"9",
            cod:$("#buscarCod").val(),
            des:$("#buscarDes").val(),
            prog:$("#id_progpyp").val()
        }, function(data){
        
            if(data.length>0){ 
                $.each(eval(data), function(i,item){
                    add_actividadpyp(item)
                })
                $("#tabla-actividadpyp").addClass("tablesorter").tablesorter({
                    widthFixed: true,
                    widgets: ['zebra']
                }).tablesorterPager({
                    container: $("#pager")
                })
            }else{
                alert('No se encontraron registros')
            }      
       
        })

    }
}


/*clarea los datos del formulario de busqueda*/
function limpiarBusqueda(){
    $("#buscarCod").val("");
    $("#buscarDes").val("");    
}


function validarActividad(){
    var codigo = $("#codigo").val();
        
    jQuery.ajax({
        type: "POST",
        url: "/salus/ValidarFormularioServlet",
        data: "op=9&num="+codigo,
        dataType: 'json',
        async:false,
        success: function(msg){
            
            if(msg.error=='1'){
                $("#error_num").html("<b style='color:orange'>El codigo ya existe</b>");
                $("#codigo").val("")
                $("#codigo").focus();
            }else{
                //$("#error_num").html("");
                guardar_actividadpyp()
            }
        }

    });
}



function clear_form_elements(ele) {

    $(ele).find(':input').each(function() {
        switch(this.type) {
            case 'password':
            case 'select-multiple':
            case 'select-one':
            case 'text':
            case 'file':
            case 'textarea':
                $(this).val('');
                break;
            case 'checkbox':
            case 'radio':
                this.checked = false;
        }
    });

}

/*autosuggest*/
function lookup(inputString,tipo) {


    if(tipo==1){
        if(inputString.length == 0) {
            // Hide the suggestion box.
            $('#suggestions').hide();
        } else {
            $.post("/salus/AdministrarServlet", {
                op:-24,
                queryString: ""+inputString+"",
                tipo:tipo
            }, function(data){
                if(data.length >0) {
                    $('#suggestions').show();
                    $('#autoSuggestionsList').html(data);
                }
            });
        }
    }else{
        if(inputString.length == 0) {
            // Hide the suggestion box.
            $('#suggestions2').hide();
        } else {
            $.post("/salus/AdministrarServlet", {
                op:-24,
                queryString: ""+inputString+"",
                tipo:tipo
            }, function(data){
                if(data.length >0) {
                    $('#suggestions2').show();
                    $('#autoSuggestionsList2').html(data);
                }
            });
        }
    }


} // lookup




function fill(id,descripcion) {            
    $('#des_actcups').val(descripcion);
    $('#id_actcups').val(id);
    setTimeout("$('#suggestions').hide();", 200);
}
function fill2(id,descripcion){
    $('#des_actsoat').val(descripcion);
    $('#id_actsoat').val(id);
    setTimeout("$('#suggestions2').hide();", 200);
}